Doors Embedded OS
Walter O. Krawec
wkrawec@hotmail.com

Copyright (c) 2006 All Rights Reserved.

--Disclaimer--

IN NO EVENT SHALL THE AUTHOR BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

THE AUTHOR SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE AUTHOR HAS NO OBLIGATIONS TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.

--Introduction--

The Doors Embedded OS is a multitasking OS for the HC11 which allows you to easily create multitasking programs.

--Usage--

First, you'll need to modify the kernel.asm file so that it will work with your particular HC11 configuration.  Open up the kernel.asm file and modify the following:

PROGRAM_START  EQU  $2350  - modify the $2350 so that the address points to the location in memory where you store user programs

STACK_START    EQU  $7fff  - modify the $7fff so that the address points to the top-most location in memory where the processes' stacks are stored (this should be RAM not EEPROM)

org $e000                  - modify the $e000 so that the address points to the location in memory where you store the actual OS

You will then need to assemble the .asm file using the batch file assemble.bat .  The file Kernel.s19 should be generated.  Simply download this file to your HC11 using your usual downloader.

--Creating a Program--

To create a user program for this OS, either use the included AS11 assembler or Small C++.  Make sure when compiling your program that the program's start address is the same as PROGRAM_START which you modified above.  Also make sure that you do not modify the program's stack point (the lds command) as this will be done for you automatically by the OS.

--Downloading a Program--

To download a program, you can either use a regular downloader, or you can use the OS' internal downloading function.  To use the latter, first run the DoorsTerm.exe program (this is a .net program and requires the .net 2.0 framework from MS) and open the COM port (FILE->Open COM Port).  Next make sure the HC11 is running the OS and select the Download menu item (Doors OS->Download or CTRL-D).  Then simply select the .s19 file you wish to download and hit OK.

--Running a Program--

After downloading a user program to the OS, you can run it by simply sending an 'r' through the serial port to the OS.

--Using DoorsTerm.exe--

DoorsTerm.exe is a simple C# application that allows you to more easily use the Doors OS.  When run, you must first open the COM port (under the FILE menu).  Then to send a command, use the lower-most edit box.  Output from the OS will be displayed in the top-most edit box.  The Doors OS menu allows you to quickly access important features of the OS without having to remember their text commands.

The source code for this application can be found in the DoorsTerm directory.  Feel free to modify or port that to a different platform if needed.

--Conclusion--

If you have any questions at all, or any problems with any of the software mentioned here, feel free to send me an email at wkrawec@hotmail.com .